package com.fira.api.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fira.common.annotation.Excel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import javax.validation.constraints.NotBlank;
import java.util.Date;

/**
 * 学生信息对象 edu_student
 *
 * @author wuzhenggui
 * @date 2021-10-11
 */
public class EduStudentDTO {
    private static final long serialVersionUID = 1L;

    /**
     *
     */
    private String id;

    /**
     * 租户
     */
    private String tenantId;

    /**
     * 学生姓名
     */
    @Excel(name = "学生姓名")
    @NotBlank(message = "学生姓名不能为空")
    private String studentName;

    /**
     * 学生性别(1:男,2:女)
     */
    @Excel(name = "学生性别(1:男,2:女)")
    private String studentSex;

    /**
     * 学生在读学校
     */
    @Excel(name = "学生在读学校")
    @NotBlank(message = "学生在读学校不能为空")
    private String studentSchool;

    /**
     * 学生就读年级
     */
    @Excel(name = "学生就读年级")
    private String studentGrade;

    /**
     * 学员昵称
     */
    @Excel(name = "学员昵称")
    private String studentNickName;

    /**
     * 学员生日
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "学员生日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date studentBirthday;

    /**
     * 学员家庭地址
     */
    @Excel(name = "学员家庭地址")
    @NotBlank(message = "不能为空")
    private String studentAddress;

    /**
     * 学生标签
     */
    @Excel(name = "学生标签")
    private String studentFlag;

    /**
     * 来源渠道
     */
    @Excel(name = "来源渠道")
    private String studentChannel;

    /**
     * 来源备注
     */
    @Excel(name = "来源备注")
    private String channelRemark;

    /**
     * 是否有效(0:无效，1:有效)
     */
    @Excel(name = "是否有效(0:无效，1:有效)")
    private String status;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }


    public String getStudentName() {
        return studentName;
    }

    public void setStudentName(String studentName) {
        this.studentName = studentName;
    }

    public String getStudentSex() {
        return studentSex;
    }

    public void setStudentSex(String studentSex) {
        this.studentSex = studentSex;
    }

    public String getStudentSchool() {
        return studentSchool;
    }

    public void setStudentSchool(String studentSchool) {
        this.studentSchool = studentSchool;
    }

    public String getStudentGrade() {
        return studentGrade;
    }

    public void setStudentGrade(String studentGrade) {
        this.studentGrade = studentGrade;
    }

    public String getStudentNickName() {
        return studentNickName;
    }

    public void setStudentNickName(String studentNickName) {
        this.studentNickName = studentNickName;
    }

    public Date getStudentBirthday() {
        return studentBirthday;
    }

    public void setStudentBirthday(Date studentBirthday) {
        this.studentBirthday = studentBirthday;
    }

    public String getStudentAddress() {
        return studentAddress;
    }

    public void setStudentAddress(String studentAddress) {
        this.studentAddress = studentAddress;
    }

    public String getStudentFlag() {
        return studentFlag;
    }

    public void setStudentFlag(String studentFlag) {
        this.studentFlag = studentFlag;
    }

    public String getStudentChannel() {
        return studentChannel;
    }

    public void setStudentChannel(String studentChannel) {
        this.studentChannel = studentChannel;
    }

    public String getChannelRemark() {
        return channelRemark;
    }

    public void setChannelRemark(String channelRemark) {
        this.channelRemark = channelRemark;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getTenantId() {
        return tenantId;
    }

    public void setTenantId(String tenantId) {
        this.tenantId = tenantId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("id", getId()).append("studentName", getStudentName()).append("studentSex", getStudentSex()).append("studentSchool", getStudentSchool()).append("studentGrade", getStudentGrade()).append("studentNickName", getStudentNickName()).append("studentBirthday", getStudentBirthday()).append("studentAddress", getStudentAddress()).append("studentFlag", getStudentFlag()).append("studentChannel", getStudentChannel()).append("channelRemark", getChannelRemark()).append("status", getStatus())
               .toString();
    }
}
